Overview of TS RemoteApp
TS
RemoteApp enables programs to run through Terminal Services and appear
as if they were running on a user’s local computer. Before Windows
Server 2008, TS users who needed to run an application on a remote
terminal server first needed to establish a desktop session on the
server and then launch the application within that desktop session.
With TS RemoteApp, the application alone is streamed through RDP to a
resizable window on the user’s local desktop.
You can deploy a RemoteApp program to users in either of the following ways:
You
can make RemoteApp programs available on a Web site by distributing the
RemoteApp programs through the TS Web Access page. This page is located
at http://servername/ts or https://servername/ts
(if the Web server can accept SSL connections). In this scenario, you
configure the TS Web Access page to display icons of available
RemoteApp programs. Clicking any of these icons launches the RemoteApp
program on the user’s computer.
You
can distribute RemoteApp programs as RDP files or Windows Installer
packages through a file share or through other distribution mechanisms
such as Microsoft Systems Management Server 2003, Microsoft System
Center Configuration Manager 2007, or Active Directory software
distribution. After obtaining the RDP file or installing it through
a Windows Installer package, a user launches the program by
double-clicking that RDP file, by accessing the program from the Start
menu, or by opening a file whose extension is associated with the
RemoteApp program.
After
launching the RemoteApp program by one of these methods, a user is able
to run the program as if it were installed locally. As with any TS
session, the terminal server provides virtually all the resources
needed to run the RemoteApp program.
Note: TS RemoteApp and user sessions
When a user runs two RemoteApp programs hosted on the same terminal server, the programs belong to the same TS user session.
TS
RemoteApp enables you to take advantage of the resources of a central
server and reduce management complexity in the following situations:
Users
need to access programs hosted on your network from remote locations.
In this case, you can deploy TS RemoteApp together with TS Gateway so
that the remote users can access the programs from the Internet.
Your network includes old computers that lack the hardware or software resources needed to run a required application.
Your company has a branch office that lacks the IT personnel needed to support a given application on site.
Your
network includes user desktops with operating system or software
conflicts that prevent the installation of a required application.
You need to support users who do not have assigned computers but who do need to use a particular application consistently.
You want to reduce costs associated with an application by installing it on only one computer.
Configuring a Server to Host RemoteApp Programs
To
prepare a server to host RemoteApp programs, you first need to install
the Terminal Services role service on that server. No other role
service is necessary because TS RemoteApp is integrated into the main
component of Terminal Services.
The
next step in configuring a server to host a RemoteApp program is to
install the desired applications in a way that will make them available
to multiple users. You can achieve this only by installing the program
while the terminal server is in Install mode. When Terminal Services is in Install mode, installing an application creates only master copies of the Registry entries or
.ini files that are used to store user-specific application data. Only
when users later launch the application are these master entries then
copied into the users’ profiles to store personal settings.
To install an application in Install mode, you have three options:
You
can use a Windows Installer package (MSI) file to install the program.
When you install a program by using a Windows Installer package, the
program will install in Terminal Server Install mode.
You can use the Install Application On Terminal Server option in Control Panel to install the program. This option is shown in Figure 1.
Before you install a program, you can run the Change user /install or Chguser /install command from the command line. After the program is installed, run the Change user /execute or Chguser /execute command to exit from Install mode.
Adding Programs for Publication in TS RemoteApp Manager
After
you install the required applications in Install mode, you need to add
these programs to the RemoteApp Programs list in TS RemoteApp Manager.
Note: What is TS RemoteApp Manager?
TS
RemoteApp Manager is the main administrative console used to deploy,
manage, and configure RemoteApp programs. You can open TS RemoteApp
Manager by clicking Start, Administrative Tools, Terminal Services, and
then TS RemoteApp Manager.
To
perform this step, open TS RemoteApp Manager, and then click Add
RemoteApp Program in the Actions pane. After you select the program in
a simple wizard, the application appears in the RemoteApp Programs
list, as shown in Figure 2.
Once
programs are added to this list, they automatically appear in TS Web
Access by default if that component is already installed on the same
terminal server. You also can use TS RemoteApp Manager to create RDP
files or Windows Installer packages of programs that are already added
to the list.
All three of these publishing options are described in more detail in the following sections.
Deploying a RemoteApp Program Through TS Web Access
To
make the TS Web Access feature available, you need to install the TS
Web Access role service. If you install TS Web Access on the same
server as the terminal server hosting the RemoteApp programs, all the
programs listed in the RemoteApp Programs list in the TS RemoteApp
Manager appear on the TS Web Access page by default.
To access the TS Web Access page, users open Microsoft Internet Explorer and browse to http:// servername /ts. (Alternatively, users can browse to https:///ts if the server has been configured with a server certificate issued by a trusted CA.) The TS Web Access page is shown in Figure 3. servername
On
the TS Web Access page, users can launch any of the RemoteApp programs
by clicking the appropriate icon. In a two-server scenario, TS Web
Access and Terminal Services run on separate servers. In this case, you
need to take two additional steps to ensure that the TS Web Access page
displays RemoteApp programs hosted on the terminal server.
On
the Configuration tab of the TS Web Access page, you must type the name
of the remote terminal server in the Terminal Server Name text box, as
shown in Figure 4.
(To see the Configuration tab, you must connect to the TS Web Access
server with the credentials of a user account that is a member of the
TS Web Access Administrators local group on the TS Web Access server.)
You
must add the computer account of the TS Web Access server to the TS Web
Access Computers security group on the terminal server.
Note: TS Web Access points to one server
Regardless
of whether you implement TS Web Access with one or two servers, the TS
Web Access page displays resources that reside on just one terminal
server.
Creating an RDP File of a RemoteApp Program for Distribution
You
can create an RDP file of any program listed in the RemoteApp Programs
list in TS RemoteApp Manager. To do so, simply select the program in
the list, and then click Create .RDP File under Other Distribution
Options, as shown in Figure 5.
This
procedure launches the RemoteApp Wizard. Before creating an RDP file
that points to a remote program, the RemoteApp Wizard enables you to
configure certain settings for that RDP file on the Specify Package
Settings page. For example, it allows you to specify the TCP port on
which the remote terminal server will listen for connection requests.
(The standard port is 3389.) The wizard also enables you to require
that user connections proceed through a specified TS Gateway server
before launching the RemoteApp program. Finally, the wizard enables you
to sign the RDP file digitally with a certificate. This signature
assures clients that the RDP files have been issued by a trusted
publisher.
The Specify Package Settings page is shown in Figure 6.
After
you create the RDP file by using the RemoteApp Wizard, you can
distribute the file to client computers by using your existing software
distribution process, such as Microsoft Systems Management Server (SMS)
2003, Microsoft System Center Configuration Manager 2007, or Group
Policy. Alternatively, you can also distribute the file through e-mail
or a network share.
Creating a Windows Installer Package of a RemoteApp Program for Distribution
As
an alternative to creating RDP files for distribution, you can create
and distribute MSI files instead. To perform this task, select the
desired RemoteApp program in the RemoteApp program list in TS RemoteApp
Manager, and then click Create Windows Installer Package under Other
Distribution Options, as shown in Figure 7.
This
step opens the RemoteApp Wizard. As with RDP files, the RemoteApp
Wizard includes a Specify Package Settings page on which you can
specify a terminal server, a TS Gateway setting, and a digital
certificate whenever you create a Windows Installer package.
However,
when you create a Windows Installer package, the RemoteApp Wizard also
displays a Configure Distribution Package page with a second set of
options. First, you can use this page to specify the location of the
shortcuts to the RemoteApp program that will be installed. The optional
locations are the user’s desktop and a Start menu folder with a name of
your choice. Second, you can also use the Configure Distribution
Package page to configure the RemoteApp program to open every time a
file with the associated file extension is opened. (Use this option
only when clients do not have locally installed versions of the
program.)
The Configure Distribution Package page of the RemoteApp Wizard is shown in Figure 8.
As
with RDP files, you can distribute Windows Installer packages to
clients by using SMS, System Center Configuration Manager, or Group
Policy. Alternatively, you can distribute the files through e-mail or a
network share.